<template>
	<a-modal :title="title" :width="1200" :visible="visible" :confirmLoading="confirmLoading" switchFullscreen
		@ok="handleOk" @cancel="handleCancel" cancelText="关闭">

		<a-spin :spinning="confirmLoading">
			<a-form :form="form">

				<a-form-item :labelCol="labelCol" :wrapperCol="wrapperCol" label="标题">
					<a-input placeholder="请输入标题" v-decorator="['title', {}]" />
				</a-form-item>
				<a-form-item :labelCol="labelCol" :wrapperCol="wrapperCol" label="内容">
					<j-editor  style="width: 100%" v-decorator="[ 'content', {} ]" triggerChange></j-editor>
				</a-form-item>

			</a-form>
		</a-spin>
	</a-modal>
</template>

<script>
	import JEditor from '@/components/jeecg/JEditor'
	import {
		httpAction
	} from '@/api/manage'
	import pick from 'lodash.pick'
	import moment from "moment"

	export default {
		name: "AtBossModal",
		components: {
			JEditor
		},
		data() {
			return {
				title: "操作",
				visible: false,
				model: {},
				labelCol: {
					xs: {
						span: 24
					},
					sm: {
						span: 5
					},
				},
				wrapperCol: {
					xs: {
						span: 24
					},
					sm: {
						span: 16
					},
				},

				confirmLoading: false,
				form: this.$form.createForm(this),
				validatorRules: {},
				url: {
					add: "/app/atBoss/add",
					edit: "/app/atBoss/edit",
				},
			}
		},
		created() {},
		methods: {
			add() {
				this.edit({});
			},
			edit(record) {
				this.form.resetFields();
				this.model = Object.assign({}, record);
				this.visible = true;
				this.$nextTick(() => {
					this.form.setFieldsValue(pick(this.model, 'title', 'content'))
					//时间格式化
				});

			},
			close() {
				this.$emit('close');
				this.visible = false;
			},
			handleOk() {
				const that = this;
				// 触发表单验证
				this.form.validateFields((err, values) => {
					if (!err) {
						that.confirmLoading = true;
						let httpurl = '';
						let method = '';
						if (!this.model.id) {
							httpurl += this.url.add;
							method = 'post';
						} else {
							httpurl += this.url.edit;
							method = 'put';
						}
						let formData = Object.assign(this.model, values);
						//时间格式化

						console.log(formData)
						httpAction(httpurl, formData, method).then((res) => {
							if (res.success) {
								that.$message.success(res.message);
								that.$emit('ok');
							} else {
								that.$message.warning(res.message);
							}
						}).finally(() => {
							that.confirmLoading = false;
							that.close();
						})



					}
				})
			},
			handleCancel() {
				this.close()
			},


		}
	}
</script>

<style lang="less" scoped>

</style>